#ifndef __TREE__
#define __TREE__

#include "Node.h"
#include <iostream>
#include <ctime>
#include <stdlib.h>
#include <cstdlib>
#include <math.h>
#include <vector>
#include <fstream>
#include <stdio.h>
#include <utility>
#include <stack>
#include <queue>
#include <set>

using namespace std;

struct TreeNode{
    public:
        int number;
        int feature;
        float threshold;
        int childL;
        int childR;
        float p;
};

class Tree{
   public:
       Tree(string filename);
       float getCost(Node* node);
       void printTree();
   private:
       vector<TreeNode*> nodes;
       int numNodes;
       int numFeatures;
};




#endif
